<?php
/**
 * 我的框架的入口文件
 * 2009.3.14
 * 注意：
 * 1 controller和act的命名只能包含字母和数字（跟apache的重写规则有关）
 * 2 普通目录命名不能包含下划线_，否则会被重写
 * */
define('MYLIB_VIEW_PATH',ROOT_PATH.'view/' ); //视图地址
define('MYLIB_CONTROLLER_PATH',ROOT_PATH.'controller/'); //控制器地址
require_once(LIB_PATH.'/function/functions.php');//公用函数
require_once(LIB_PATH.'/request/myrequest.php'); //请求封装
require_once(LIB_PATH.'/response/myresponse.php'); //响应封装
require_once(LIB_PATH.'/dispatch/mydispatch.php'); //转发
require_once(LIB_PATH.'/core/mylib.php'); //核心
require_once(LIB_PATH.'/model/base.model.php'); //核心
require_once(LIB_PATH.'/router/myrouter.php');//路由
require_once(LIB_PATH.'/db/mydb.php');//数据库


//自动加载类，自 PHP 5.3.0 起可以使用一个匿名函数
spl_autoload_register(function ($class) {
    $lowerName       = strtolower($class);
    $shortLowerName  = preg_replace("/^my/i","",$lowerName);
    if(file_exists(ROOT_PATH.'model/' . $lowerName . '.model.php')){////优先自定义类
        include ROOT_PATH.'model/' . $lowerName . '.model.php';
    }else if(file_exists(LIB_PATH."$shortLowerName/" . $lowerName . '.php')){
        include LIB_PATH."$shortLowerName/" . $lowerName . '.php';
    }else{
        myresponse::showConfirm("糟糕，系统暂时不在状态！","$class 类没有定义");
    }
});
//require_once (LIB_PATH . '/openqq/myopenqqv3.php'); // QQ接口类

//入口文件index_example.php，放在view目录下，改名为index.php

/**
//apache设置 
LoadModule rewrite_module modules/mod_rewrite.so

<VirtualHost *:80>
    ServerAdmin xuleit@126.com
    DocumentRoot "e:/sites/polang/view"
    ServerName www.polang.org
    #DirectoryIndex index.html 
    RewriteEngine on
    RewriteLogLevel 0
    RewriteLog e:/sites/polang/log/rewrite.log
    RewriteRule ^/([0-9a-z]+),([0-9a-z]+)(,?)(.*)  /index.php?con=$1&act=$2&param=$4 [L,NC]
#   ErrorLog "logs/dummy-host.localhost-error.log"
</VirtualHost>

//Url参数解析原理：
1 全部参数用,隔开。
2 第一个和第二个下划线分别表示控制器和Action
3 后边的下划线分别表示变量名和变量值，必须成对出现。

 * */
